System and method for formatting publishing content

ABSTRACT

Various systems and methods are provided to format a content item into a predefined markup format. For example, the various embodiments provide for the transformation of a content item embodied in a text file into a discriminate markup file such as an Extensible Markup Language (XML) file that includes metadata such as tags that differentiate among the various content element in the content item.

TECHNICAL FIELD

[0001] The present invention is generally related to the field ofpublishing and, more particularly, is related to a system and method forformatting publishing content.

BACKGROUND OF THE INVENTION

[0002] In the publishing field, content items in digital form such asnews, features, photos, articles, graphics and other items are availablefor publishing via the Internet and through other services. For example,such content items may be obtained from the Associated Press or othernews organizations. Also, many newspapers are becoming national in scopeexporting their content to individuals all over the United States viathe Internet or other networks.

[0003] In order to facilitate transmission of news articles over theInternet and other networks, news publishers have adopted a specialdigital format to be employed for news articles. This format is calledthe News Industry Text Format (NITF). The NITF provides a solution forsharing news developed by the world's leading news publishers. NITF usesthe Extensible Markup Language (XML) to define the content and structureof news articles using metadata. Because metadata is applied throughoutthe news content, NITF documents are far more searchable and useful thanweb pages written in Hypertext Markup Language (HTML) or regular textformats.

[0004] By using NITF, publishers can adapt the look, feel, andinteractivity of their documents to the bandwidth, devices, andpersonalized needs of their subscribers. These documents can betranslated into HTML, WML (for wireless devices), RTF (for printing), orany other format the publisher wishes. NITF was developed by theInternational Press Telecommunications Council, an independentinternational consortium of the world's leading news agencies andpublishers. It is a standard that is open, public, proven, well used,well documented, and well supported.

[0005] Unfortunately, much of the available content in digital format isnot composed using the NITF standard. For example, many news articlesare made available in text format or other formats. As a consequence,applications that require articles and the like to conform with NITFcannot process such articles. This presents a problem in that manypublishers who create the content items in text file format do not havethe technical expertise to generate the content items in NITF or tocreate stylesheets or other means by which content items are transformedfrom text files into NITF.

SUMMARY OF THE INVENTION

[0006] A method and apparatus that formats a content item converts thecontent item embodied in a text file into an indiscriminate markup file.The content item that is embodied in the indiscriminate markup file istransformed into a discriminate markup file. This discriminate markupfile includes a number of discriminating tags that are associated with anumber of content elements.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

[0007] The invention can be understood with reference to the followingdrawings. The components in the drawings are not necessarily to scale.Also, in the drawings, like reference numerals designate correspondingparts throughout the several views.

[0008]FIG. 1 is a block diagram of a client-server network with acontent formatting server that is employed to transform a text file intoa discriminate markup file;

[0009]FIG. 2 is a drawing of a text file to be converted to adiscriminate markup file using the content formatting server of FIG. 1;

[0010]FIG. 3 is a drawing of a discriminate markup file generated fromthe text file of FIG. 2 using the content formatting server of FIG. 1;

[0011]FIG. 4 is a drawing of an indiscriminate markup file generated byan indiscriminate markup formatter in the content formatting server ofFIG. 1;

[0012]FIG. 5 is a drawing of a heuristics markup file employed togenerate a heuristics stylesheet used to transform the indiscriminatemarkup file of FIG. 4 into the discriminate markup file of FIG. 3;

[0013]FIG. 6 is a functional block diagram that illustrates a firstapproach employed in the transformation of a text file of FIG. 2 intothe discriminate markup file of FIG. 3 using the content formattingserver of FIG. 1 according to an aspect of the present invention;

[0014]FIG. 7 is a flow chart of a first embodiment of a transformcontroller stored and executed in the content formatting server of FIG.1 to perform the transformation illustrated in FIG. 6; and

[0015]FIG. 8 is a flow chart of an indiscriminate markup formatterstored and executed in the content formatting server of FIG. 1 that isemployed in the transformation illustrated in FIG. 6.

DETAILED DESCRIPTION OF THE INVENTION

[0016] In light of the forgoing, the present invention provides for asystem and a method to format a content item into a predefined markupformat. For example, the present invention provides various embodimentsto transform a content item embodied in a text file into a discriminatemarkup file such as an Extensible Markup Language (XML) file thatincludes metadata such as tags that differentiate among the variouscontent element in the content item.

[0017] In this respect, in one embodiment a formatting system isprovided that includes a processor circuit having a processor and amemory. The formatting system also includes a content item embodied in atext file stored in the memory and formatting logic stored in the memoryand executable by the processor. The formatting logic comprises logicthat converts the content item embodied in the text file into anindiscriminate markup file, and, logic that transforms the content itemembodied in the indiscriminate markup file into a discriminate markupfile, the discriminate markup file including a number of discriminatingtags that are associated with a number of content elements.

[0018] In another embodiment, the present invention provides for aprogram embodied on a computer readable medium to format a content item.In this respect, the program comprises code that converts the contentitem embodied in a text file into an indiscriminate markup file, and,code that transforms the content item embodied in the indiscriminatemarkup file into a discriminate markup file, the discriminate markupfile including a number of discriminating tags that are associated witha number of content elements.

[0019] In addition, the present invention may be viewed as a method toformat a content item. In this respect, the method comprises the stepsof converting the content item embodied in a text file into anindiscriminate markup file in at least one processor based system, and,transforming the content item embodied in the indiscriminate markup fileinto a discriminate markup file in the at least one processor basedsystem, the discriminate markup file including a number ofdiscriminating tags that are associated with a number of contentelements.

[0020] With reference to FIG. 1, shown is a client/server network 100according to an aspect of the present invention. The client/servernetwork 100 includes a content formatting server 103 and a client 106,both of which are coupled to a network 109. Before a detaileddescription of the operation of the client/server network 100 isprovided, a discussion of the physical make up of the client/servernetwork 100 is provided.

[0021] The content formatting server 103 includes a processor 113 and amemory 116, both of which are coupled to a local interface 119. Thelocal interface 119 may be, for example, a data bus with an accompanyingcontrol/address bus as is generally known by those with ordinary skillin the art. In this respect, the processor 113, memory 116, and thelocal interface 119 generally comprise a processor circuit as may befound, for example, in computer systems or other like systems.

[0022] Stored on the memory 116 and executable by the processor 113 areseveral components. These components include an operating system 123, atransform controller 126, a transformation processor 129, and anindiscriminate markup formatter 133. Also stored on the memory 116 areseveral files that are manipulated by the transform controller 126,transformation processor 129, and the indiscriminate markup formatter133 as will be discussed. These files include an indiscriminate markupfile 136, a heuristics stylesheet 139, a discrimination stylesheet 143,and a discriminate markup file 146. The transformation processor 129 maybe, for example, an extensible stylesheet language transform (XSLT)processor or other like processor as is generally known by those withordinary skill in the art. The specific operation of the transformcontroller 126, transformation processor 129, and the indiscriminatemarkup formatter 133 is discussed in later text.

[0023] The client 106 also includes a processor circuit with a processor153, a memory 156, and a local interface 159. The local interface 159may be, for example, a data bus with an accompanying control/address busas is generally known by those with ordinary skill in the art. Theprocessor circuit of the client 106 may be similar to those found incomputer systems or other systems with suitable capability. In thisrespect, stored on the memory 156 and executable by the processor 153are an operating system 163, and a client application 166. Also storedon the client 106 are a text file 169 and a heuristics markup file 173.

[0024] The network 109 includes, for example, the Internet, wide areanetworks (WANs), local area networks (LANs), or other suitable networks,etc., or any combination of two or more such networks. The contentformatting server 103 and the client 106 may each include a number ofperipheral devices including user input devices such as, for example, akeypad, touch pad, touch screen, microphone, scanner, mouse, joystick,or one or more push buttons, etc. The peripheral devices may alsoinclude user output devices such as, for example, display devices,indicator lights, speakers, printers, etc. Specific display devices maybe, for example, cathode ray tubes (CRTs), liquid crystal displayscreens, gas plasma-based flat panel displays, light emitting diodes,etc.

[0025] Each of the memories 116 and 156 may include both volatile andnonvolatile memory components. Volatile components are those that do notretain data values upon loss of power. Nonvolatile components are thosethat retain data upon a loss of power. Thus, each of the memories 116and 156 may comprise, for example, random access memory (RAM), read-onlymemory (ROM), hard disk drives, floppy disks accessed via an associatedfloppy disk drive, compact disks accessed via a compact disk drive,magnetic tapes accessed via an appropriate tape drive, and/or othermemory components, or a combination of any two or more of these memorycomponents. In addition, the RAM may comprise, for example, staticrandom access memory (SRAM), dynamic random access memory (DRAM), ormagnetic random access memory (MRAM) and other such devices. The ROM maycomprise, for example, a programmable read-only memory (PROM), anerasable programmable read-only memory (EPROM), an electrically erasableprogrammable read-only memory (EEPROM), or other such of memory device.

[0026] Also, each of the processors 113 and 153 may represent multipleprocessors and each of the memories 116 and 156 may represent multiplememories that operate in parallel processing circuits, respectively. Insuch a case, the local interfaces 119 and 159 may be an appropriatenetwork that facilitates communication between any two of the multipleprocessors or between any processor and any of the memories, etc. Thelocal interfaces 119 and 159 may facilitate memory to memorycommunication as well. The processors 113 and 153 may be electrical oroptical in nature or other physical configuration.

[0027] The operating systems 123 and 163 are executed to control theallocation and usage of hardware resources in the content formattingserver 103 and the client 106, respectively. Specifically, the operatingsystems 123 and 163 control the allocation and usage of the memories 116and 156, and the allocation and usage of processing time as well asperforming other functionality as is generally known by those withordinary skill in the art. In this manner, the operating systems 123 and163 serve as the foundation on which applications depend as is generallyknown by those with ordinary skill in the art.

[0028] Turning then to FIG. 2 shown is a drawing of a text file 169according to an aspect of the present invention. The text file 169embodies a content item 183. The content item 183 includes a number ofcontent elements 186. The content item 183 may be, for example, anarticle in a magazine or a newspaper. Note, however, that the contentitem 183 may be any expression embodied within text as is generallyknown by those with ordinary skill in the art. Thus, in the context ofthe publishing world, the content item 183 may be an article thatincludes various content elements 186 such as the title, author, releasedate, article body, and other elements distinguishable in a similarmanner.

[0029] Referring then to FIG. 3, shown is the discriminate markup file146 according to an aspect of the present invention. The discriminatemarkup file 146 includes the content item 183 with the content elements186 being surrounded or indicated by various discriminating tags 189.Thus the discriminate markup file 146 may be created using ExtensibleMarkup Language (XML) or other appropriate markup language. In thisrespect, the discriminate markup file 146 may be formatted according toa particular data type document (DTD) or other format. Thus, thediscriminate markup file 146 embodies the content item 183 in a markupformat that provides metadata relating to the data within the contentitem 183 itself. This is advantageous in that some other application oneither the client 106 or the content formatting server 103, or someother system connected to network 109 (FIG. 1), can process thediscriminate markup file 146 as it includes all of the content elements186 therein in a format that is recognizable by standard software toolsor other processing tools, such as an Extensible Markup Language (XML)parser or an Extensible Stylesheet Language Transformation (XSLT)processor as is generally known by those with ordinary skill in the art.

[0030] Turning then to FIG. 4, shown is the indiscriminate markup file136 according to an aspect of the present invention. The indiscriminatemarkup file 136 includes a number of content elements 186 that arenested between a set of indiscriminate tags 193. In this sense, theindiscriminate markup file 136 embodies the content item 183 in a mannerthat does not discriminate or otherwise indicate the nature of thecontent elements 186 with a set of discriminating tags 189 (FIG. 3).Thus the indiscriminate markup file 136 provides no metadata relating tothe content elements 186. The indiscriminate markup file 136 provides anintermediate format in which the content item 183 is embodied to performthe transformation from the text file 169 (FIG. 2) into the discriminatemarkup file 146 (FIG. 3) as will be discussed.

[0031] With reference to FIG. 5, shown is an example of the heuristicsmarkup file 173 according to an aspect of the present invention. Theheuristics markup file 173 may be created using Extensible MarkupLanguage (XML) or other markup language. The heuristics markup file 173provides a relative position within the text file 169 (FIG. 2) and,correspondingly, within the indiscriminate markup file 136 (FIG. 4) ofeach of the content elements 186. Specifically, the heuristics markupfile 173 includes a number of data type tags 196 that are associatedwith a respective content element 186 (FIG. 4) in both the text file 169and in the indiscriminate markup file 136. Associated with each of thedata type tags 196 is a line indicator 199 that indicates which line inboth the text file 169 and, therefore, the indiscriminate markup file136 that the associated content element 186 may be found. Since eachcontent element 186 in the indiscriminate markup file 136 corresponds toan actual line from the text file 169, the heuristics markup file 173ultimately maps the content elements 186 from the text file 169 and theindiscriminate markup file 136 to the content elements 186 in thediscriminate markup file 146 (FIG. 3).

[0032] Referring back to FIG. 1, a general explanation of the operationof the client/server network 100 in the context of a specific example isprovided to illustrate the use of the present invention. To begin, auser of the client 106 generates a content item 183 such as publishingcontent that is embodied in the form of the text file 169. For example,the text file 169 may embody a newspaper article that was generated bythe client application 166. Unfortunately, the text file 169 does notconform to the NITF as is generally known by those with ordinary skillin the art. If the text file 169 is embodied in a markup format such asXML, etc., then a transformation of the content of the text file 169into the NITF might be performed using a transformation processor 129and an appropriate stylesheet in the client 106.

[0033] However, the average user may not have the technical expertise togenerate the proper stylesheet, etc., to effect the transformation. Inaddition, the step of embodying the text file 169 in a markup format mayprove to be tedious, especially where many text files 169 are involved,as is typically the case with publishers who share content.

[0034] To address these problems, according to the present invention,the user generates a simple heuristics markup file 173 that describesthe relative position of various content elements 186 included in thetext file 169. Such information may be, for example, the byline,dateline, title, article text, and other information. Both the text file169 and the heuristics markup file 173 are provided to the contentformatting server 103. Note where multiple text files 169 use the sameformat or layout, a single heuristics markup file 173 may be created forall of the text files 169. In such case, a unique identifier may beincluded in the heuristics markup file 173 and the respective text files169 so that they can be associated with each other in the contentformatting server 103.

[0035] The content formatting server 103 executes the transformcontroller 126, transformation processor 129, and the indiscriminatemarkup formatter 133 to transform the text file 169 into a discriminatemarkup file 146. The discriminate markup file 146 may be, for example, amarkup file that conforms to the NITF. The term “discriminate” is usedto describe the discriminate markup file 146 as it refers to the factthat the metadata or tags in the discriminate markup file 146 designatesthe nature or type of information associated therewith. Once thediscriminate markup file 146 is created, then it may be transmitted backto the client 106 via the network 109 or to some other entity on thenetwork 109.

[0036] The present invention provides several advantages. For example,the user of the client 106 need not be skilled in the creation ofstylesheets so as to create the stylesheets necessary to transform thetext file 169 into the discriminate markup file 146. Also, the user neednot transform the text file 169 into the indiscriminate markup file 136for further processing. All the user need do is create the simpleheuristics markup file 173 that describes the relative location of thecontent elements 186 (FIG. 4) in the text file 169. In the case thatmultiple text files 169 are created using a similar format, then onlyone such heuristics markup file 173 need be created for the multipletext files 169.

[0037] Turning then to FIG. 6, shown is a functional block diagram of aspecific approach 230 to transform the text file 169 into a discriminatemarkup file 146 in the content formatting server 103 according to oneembodiment of the present invention. According to the approach 230, thetext file 169 is applied to the indiscriminate markup formatter 133 thattransforms the text file 169 into the indiscriminate markup file 136.Specifically, the indiscriminate markup formatter 133 reformats thecontent item 183 (FIG. 2) embodied in the text file 169 into theindiscriminate markup file 136 (FIG. 4) with the indiscriminate tags 193included therein.

[0038] The heuristics stylesheet 139 and the heuristics markup file 173are applied to the transformation processor 129 to generate thediscrimination stylesheet 143. In this respect, the transformationprocessor 129 may be, for example, an extensible stylesheet languagetransform (XSLT) processor as is generally known by those with ordinaryskill in the art. Thereafter, the discrimination stylesheet 143 and theindiscriminate markup file 136 are applied to the transformationprocessor 129 that ultimately generates the discriminate markup file146. An example of the heuristics stylesheet 139 is provided in AppendixA and an example of the discrimination stylesheet 143 is provided inAppendix B.

[0039] The heuristics markup file 173 includes the relative positions ofall the content elements 186 (FIG. 4) within the indiscriminate markupfile 136 (FIG. 4). The discrimination stylesheet 143 includesinstructions to obtain the content elements 186 from the variouslocations in the indiscriminate markup file 136 and place them inappropriate locations in the discriminate markup file 146 commensuratewith the discriminating tags 189 (FIG. 3) that are contained therein. Inthis manner, the discriminate markup file 146 is generated and thecontent item 183 (FIG. 3) is expressed in the format that may beaccessed by compatible applications. For example, the discriminatemarkup file 146 may conform to the NITF for use by publishers, etc.

[0040] Referring next to FIG. 7, shown is a flow chart of the transformcontroller 126 that is employed to transform the text file 169 (FIG. 6)into the discriminate markup file 146 (FIG. 6) according to an aspect ofthe present invention. Alternatively, the flow chart of FIG. 7 may beviewed as depicting the steps in a method to transform the text file 169into the discriminate markup file 146. Beginning with block 243, thetransform controller 126 determines whether a text file 169 andaccompanying heuristics markup file 173 (FIG. 6) have been received froma client 106 (FIG. 1) requiring transformation into the discriminatemarkup file 146. Alternatively, the accompanying heuristics markup file173 may be stored in the memory 116 (FIG. 1) of the content formattingserver 103 (FIG. 1) from a prior transaction. If such is the case thenthe transform controller 126 proceeds to block 246 in which the textfile 169 (FIG. 2) is associated with the applicable heuristics markupfile 173 (FIG. 5). This association may be made in the case that theheuristics markup file 173 is stored in the memory 116 of the contentformatting server 103 and includes a field that provides uniqueidentification of the particular heuristics markup file 173 itself.Likewise, the text file 169 may also include the same designation inorder to make possible an association between the text file 169 and theheuristics markup file 173. Thereafter, in block 249 the appropriateheuristic stylesheet 139 (FIG. 6) is identified so as to enableprocessing of the text file 169 in light of the heuristics markup file173.

[0041] Thereafter, in block 253 the heuristics markup file 173 and theheuristics stylesheet 139 are applied to the transformation processor129 to obtain the discrimination stylesheet 143. Next, in block 256, thetext file 169 is applied to the indiscriminate markup formatter 133(FIG. 6) in order to obtain the indiscriminate markup file 136. Then, inblock 259 the discrimination stylesheet 143 and the indiscriminatemarkup file 136 are applied to the transformation processor 129 thatgenerates the discriminate markup file 146. In this manner the transformcontroller 126 controls the transformation of the text file 169 into thediscriminate markup file 146 by employing the transformation processor129 and the indiscriminate markup formatter 133 at appropriate times asdiscussed.

[0042] With reference then to FIG. 8, shown is a flow chart of theindiscriminate markup formatter 133 according to an aspect of thepresent invention. Alternatively, the flow chart of FIG. 8 may be viewedas depicting steps of a method implemented in the content formattingserver 103. The indiscriminate markup formatter 133 is executed in thecontent formatting server 103 (FIG. 1) in order to transform the contentitem 183 that is embodied in the form of the text file 169 into theindiscriminate markup file 136 with the indiscriminate tags 193. This isdone so that the content item is embodied in a format that may beprocessed using the transformation processor 129 (FIG. 6).

[0043] Beginning with block 273, the indiscriminate markup formatter 133generates a header and/or opening document tag such as an XML header asis generally known by those with ordinary skill in the art. Such iscreated as a portion of the indiscriminate markup file 136 as isdemanded by the particular standard or language employed whether it beXML, HTML, or other markup language. Also, an opening document tag iscreated to indicate the beginning of the document in the indiscriminatemarkup file 136. Then, in block 276, a loop is commenced for each linein the text file 169 (FIG. 2). Thereafter, in block 279 an openingindiscriminate tag 193 is written to the indiscriminate markup file 136for the current line in the text file 169.

[0044] The indiscriminate markup formatter 133 then proceeds to block283 in which the line of text in the text file 169 is associated withthe opening indiscriminate tag 193 in the indiscriminate markup file 136by writing the line of text thereto. Thereafter in block 286, theindiscriminate markup formatter 133 generates a closing indiscriminatetag 193 and writes the same to the indiscriminate markup file 136 forthe current line of text included therein. Then, in block 289 theindiscriminate markup formatter 133 determines whether the last line oftext in the text file 169 has been included in the indiscriminate markupfile 136. If not, then the indiscriminate markup formatter 133 moves toblock 291 in which the next line of text in the text file 169 isidentified to be placed in the indiscriminate markup file 136.Thereafter, the indiscriminate markup formatter 133 reverts back toblock 279 as shown.

[0045] On the other hand, if in block 289 the last line of the text file169 has been processed then the indiscriminate markup formatter 133proceeds to block 293 in which a closing document tag corresponding withthe opening document tag in the indiscriminate markup file 136 iswritten thereto. Thereafter the indiscriminate markup formatter 133 endsaccordingly.

[0046] Although the transform controller 126 (FIG. 7), transformationprocessor 129 (FIG. 1), and/or the indiscriminate markup formatter 133(FIG. 8) of the present invention are embodied in software or codeexecuted by general purpose hardware as discussed above, as analternative the transform controller 126, transformation processor 129,and/or the indiscriminate markup formatter 133 may also be embodied indedicated hardware or a combination of software/general purpose hardwareand dedicated hardware. If embodied in dedicated hardware, the transformcontroller 126, transformation processor 129, and/or the indiscriminatemarkup formatter 133 can be implemented as a circuit or state machinethat employs any one of or a combination of a number of technologies.These technologies may include, but are not limited to, discrete logiccircuits having logic gates for implementing various logic functionsupon an application of one or more data signals, application specificintegrated circuits having appropriate logic gates, programmable gatearrays (PGA), field programmable gate arrays (FPGA), or othercomponents, etc. Such technologies are generally well known by thoseskilled in the art and, consequently, are not described in detailherein.

[0047] The functional block diagram of FIG. 6 and/or the flow charts ofFIGS. 7 and 8 show the architecture, functionality, and operation of animplementation of the transform controller 126, transformation processor129, and/or the indiscriminate markup formatter 133. If embodied insoftware, each block may represent a module, segment, or portion of codethat comprises program instructions to implement the specified logicalfunction(s). The program instructions may be embodied in the form ofsource code that comprises human-readable statements written in aprogramming language or machine code that comprises numericalinstructions recognizable by a suitable execution system such as aprocessor in a computer system or other system. The machine code may beconverted from the source code, etc. If embodied in hardware, each blockmay represent a circuit or a number of interconnected circuits toimplement the specified logical function(s).

[0048] Although the functional block diagram of FIG. 6 and/or the flowcharts of FIGS. 7 and 8 show a specific order of execution, it isunderstood that the order of execution may differ from that which isdepicted. For example, the order of execution of two or more blocks maybe scrambled relative to the order shown. Also, two or more blocks shownin succession in FIGS. 7 or 8 may be executed concurrently or withpartial concurrence. In addition, any number of counters, statevariables, warning semophores, or messages might be added to the logicalflow described herein, for purposes of enhanced usability, accounting,performance measurement, or providing troubleshooting aids, etc. It isunderstood that all such variations are within the scope of the presentinvention. Also, the functional block diagram of FIG. 6 and/or the flowcharts of FIGS. 7 and 8 are relatively self-explanatory and areunderstood by those with ordinary skill in the art to the extent thatsoftware and/or hardware can be created by one with ordinary skill inthe art to carry out the various logical functions as described herein.

[0049] Also, where the transform controller 126, transformationprocessor 129, and/or the indiscriminate markup formatter 133 comprisesoftware or code, each can be embodied in any computer-readable mediumfor use by or in connection with an instruction execution system suchas, for example, a processor in a computer system or other system. Inthis sense, the logic may comprise, for example, statements includinginstructions and declarations that can be fetched from thecomputer-readable medium and executed by the instruction executionsystem. In the context of the present invention, a “computer-readablemedium” can be any medium that can contain, store, or maintain thetransform controller 126, transformation processor 129, and/or theindiscriminate markup formatter 133 for use by or in connection with theinstruction execution system. The computer readable medium can compriseany one of many physical media such as, for example, electronic,magnetic, optical, electromagnetic, infrared, or semiconductor media.More specific examples of a suitable computer-readable medium wouldinclude, but are not limited to, magnetic tapes, magnetic floppydiskettes, magnetic hard drives, or compact discs. Also, thecomputer-readable medium may be a random access memory (RAM) including,for example, static random access memory (SRAM) and dynamic randomaccess memory (DRAM), or magnetic random access memory (MRAM). Inaddition, the computer-readable medium may be a read-only memory (ROM),a programmable read-only memory (PROM), an erasable programmableread-only memory (EPROM), an electrically erasable programmableread-only memory (EEPROM), or other type of memory device.

[0050] Although the invention is shown and described with respect tocertain preferred embodiments, it is obvious that equivalents andmodifications will occur to others skilled in the art upon the readingand understanding of the specification. The present invention includesall such equivalents and modifications, and is limited only by the scopeof the claims.

I/we claim:
 1. A method to format a content item, comprising: convertingthe content item embodied in a text file into an indiscriminate markupfile in at least one processor based system; and transforming thecontent item embodied in the indiscriminate markup file into adiscriminate markup file in the at least one processor based system, thediscriminate markup file including a number of discriminating tags thatare associated with a number of content elements.
 2. The method of claim1, wherein the step of converting the content item embodied in the textfile into the indiscriminate markup file in at least one processor basedsystem further comprises associating a pair of indiscriminate tags witheach one of a number of lines of the text file.
 3. The method of claim1, wherein the step of transforming the content item embodied in theindiscriminate markup file into the discriminate markup file furthercomprises: providing a discrimination stylesheet that includes a set ofdiscrimination instructions to transform the indiscriminate markup fileinto the discriminate markup file; and applying the discriminationstylesheet and the indiscriminate markup file to a transformationprocessor, thereby implementing the set of discrimination instructions.4. The method of claim 3, wherein the step of providing a discriminationstylesheet that includes a set of discrimination instructions totransform the indiscriminate markup file into the discriminate markupfile further comprises providing the set of discrimination instructionsto write each of the number of content elements in the indiscriminatemarkup file into the discriminate markup file with a pair of associateddiscriminating tags.
 5. The method of claim 3, wherein the step ofproviding the discrimination stylesheet further comprises: providing aheuristics markup file that sets forth a relative position of thecontent elements of the content item embodied in the indiscriminatemarkup file; providing a heuristics stylesheet that sets forth a set ofheuristic instructions to translate the heuristics markup file into thediscrimination stylesheet; and applying the heuristics markup file andthe heuristics stylesheet to a transformation processor to generate thediscrimination stylesheet.
 6. The method of claim 5, further comprisingthe step of associating the heuristics markup file with the text file.7. A program embodied on a computer readable medium to format a contentitem, comprising: code that converts the content item embodied in a textfile into an indiscriminate markup file; and code that transforms thecontent item embodied in the indiscriminate markup file into adiscriminate markup file, the discriminate markup file including anumber of discriminating tags that are associated with a number ofcontent elements.
 8. The program embodied on a computer readable mediumof claim 7, wherein the code that converts the content item embodied inthe text file into the indiscriminate markup file further comprises codethat associates a pair of indiscriminate tags with each one of a numberof lines of the text file.
 9. The program embodied on a computerreadable medium of claim 7, wherein the code that transforms the contentitem embodied in the indiscriminate markup file into the discriminatemarkup file further comprises: a transformation processor; and code thatapplies a discrimination stylesheet and the indiscriminate markup fileto the transformation processor, the discrimination stylesheet includinga set of discrimination instructions to transform the indiscriminatemarkup file into the discriminate markup file.
 10. The program embodiedon a computer readable medium of claim 9, wherein the set ofdiscrimination instructions further comprises a number of instructionsthat write each of the number of content elements in the indiscriminatemarkup file into the discriminate markup file with a pair of associateddiscriminating tags.
 11. The program embodied on a computer readablemedium of claim 9, wherein the code that transforms the content itemembodied in the indiscriminate markup file into the discriminate markupfile further comprises code that applies a heuristics markup file and aheuristics stylesheet to the transformation processor to generate thediscrimination stylesheet, wherein the heuristics markup file sets fortha relative position of the content elements of the content item embodiedin the indiscriminate markup file, and, the heuristics stylesheet setsforth a set of heuristics instructions to transform the heuristicsmarkup file into the discrimination stylesheet.
 12. The program embodiedon a computer readable medium of claim 11, wherein the code thattransforms the content item embodied in the indiscriminate markup fileinto the discriminate markup file further comprises code that associatesthe heuristics markup file with the text file.
 13. A formatting system,comprising: a processor circuit having a processor and a memory; acontent item embodied in a text file stored in the memory; formattinglogic stored in the memory and executable by the processor, theformatting logic comprising: logic that converts the content itemembodied in the text file into an indiscriminate markup file; and logicthat transforms the content item embodied in the indiscriminate markupfile into a discriminate markup file, the discriminate markup fileincluding a number of discriminating tags that are associated with anumber of content elements.
 14. The formatting system of claim 13,wherein the logic that converts the content item embodied in the textfile into the indiscriminate markup file further comprises logic thatassociates a pair of indiscriminate tags with each one of a number oflines of the text file.
 15. The formatting system of claim 13, whereinthe logic that transforms the content item embodied in theindiscriminate markup file into the discriminate markup file furthercomprises: a transformation processor; and logic that applies adiscrimination stylesheet and the indiscriminate markup file to thetransformation processor, the discrimination stylesheet including a setof discrimination instructions to transform the indiscriminate markupfile into the discriminate markup file.
 16. The formatting system ofclaim 15, further comprising: a heuristics markup file stored in thememory, the heuristics markup file setting forth a relative position ofthe content elements of the content item embodied in the indiscriminatemarkup file; a heuristics stylesheet stored in the memory, theheuristics stylesheet setting forth a set of heuristics instructions totransform the heuristics markup file into the discrimination stylesheet;and wherein the formatting logic further comprises logic that appliesthe heuristics markup file and the heuristics stylesheet to thetransformation processor to generate the discrimination stylesheet. 17.A formatting system, comprising: means for converting a content itemembodied in a text file into an indiscriminate markup file; and meansfor transforming the content item embodied in the indiscriminate markupfile into a discriminate markup file, the discriminate markup fileincluding a number of discriminating tags that are associated with anumber of content elements.
 18. The formatting system of claim 17,wherein the means for converting the content item embodied in the textfile into the indiscriminate markup file further comprises means forassociating a pair of indiscriminate tags with each one of a number oflines of the text file.